package org.hyl.javabase.递归;

import org.junit.Test;

public class demo {
	@Test
	public  void main(String[] arg) {
		demo p = new demo();
		//int i = p.fun1(0);
		//System.out.println("end=" + i);
		//System.out.println(p.fun3(10,1)+"岁");
		String a[]= {"1","2","c","3","4"};
		p.fun4(a,-1);
	}

	public int fun1(int i) {
		if (i == 10)
			return i;
		System.out.println("i=" + i);
		i++;
		return fun1(i);
	}

	public void fun2(int i) {
		
		if (i < 10) {
			i++;
			System.out.println("i=" + i);
			fun2(i);
			System.out.println("j=" + i);
		} 		
	}
	/**
	 * 
	 * <p>Title: fun3</p>
	 * <p>Description:题目：有5个人坐在一起，问第五个人多少岁？他说比第4个人大2岁。
	 * 问第4个人岁数，他说比第3个人大2岁。问第三个人，
	 * 又说比第2人大两岁。问第2个人，说比第一个人大两
		岁。最后问第一个人，他说是10岁。请问第五个人多大？ </p>
	 * @return :void
	 * @throws
	 */
	public int fun3(int x,int i) {
		if (i==5) return x;
		x=x+2;
		i++;
		return fun3(x,i);
	}
	 /**
	  * 
	  * <p>Title: fun4</p>
	  * <p>Description: 题目：将一个数组逆序输出。
	  * i   b
	  * 1 	0
	  * 2	1
	  * 3	2
	  * 	3
	  * </p>
	  * @param a
	  * @param i
	  * @return :void
	  * @throws
	  */
	public void fun4(String []a,int i) {
		
		i++;
		if (i==a.length) return;
		//	System.out.print(a[i]+",");
		fun4(a,i);
		System.out.print(a[i]+",");
	}

	
}
